In the new information age, computing is becoming pervasive. Classes of machines that hitherto were entirely “dumb” machines are acquiring some level of “intelligence”. As that trend continues, there are also higher levels of expectation placed on the machines. For example, where previous generations of machines were not expected to have any computing capability, subsequent generations have some degree of computerization. A further step in this evolution is connecting machines to networks. However, often either because of physical size constraints or because computing power and data storage are not the main function of a machine, the computational power and memory size may be very limited. These constraints have a great impact on the ability of such resource-constrained devices to interact with other nodes on a network.
An example of such a resource-constrained device is the smart card. A smart card is simply a plastic card containing an integrated circuit with some memory and a microprocessor. Typically the memory is restricted to 6 K bytes of RAM. It is anticipated that smart card RAM may increase by a few kilobytes over the next few years. However, it is very likely that memory size will continue to be an obstacle to smart card applications. Most smart cards have 8-bit microprocessors.
Communications infrastructure presents another resource constraint on smart cards and similar devices. Smart cards do not have full speed USB communications, and lack full duplex serial interfaces. Currently smart cards use the ISO-7816 interface which operates at half duplex.
There are other devices with similar resource limitations. These include USB dongles (such as the iKey device sold by SafeNet, Inc., Belcamp, Md.), or SD Cards, or secure integrated circuit chips soldered directly to PC motherboards.
Herein, devices that have in common similar resource limitations, e.g., RAM limited to less than 64 K, shall be referred to as “resource-constrained devices”. Resource-constrained devices include smart cards, USB dongles, SD cards and secure integrated circuit chips attached directly to PC motherboards. Furthermore, the term resource-constrained device shall include any other devices that have similar resource constraints to these enumerated devices. For the sake of lucidity, the invention is described herein primarily in the context of smart cards. This must not be construed to limit the scope or applicability of the invention as it is equally applicable to other resource-constrained devices.
Smart cards have been used with a terminal or a host, which may be a computer having a smart card reader, or a cell phone, or other devices. When smart cards are connected to computers, host applications cannot communicate with them using standard mainstream network interfaces. Specific hardware and software in the form of smart card reader device drivers and middle-ware applications are needed to access the card services.
The co-pending and co-assigned patent application Ser. No. 10/848,738 titled “Secure Networking Using a Resource Constraint Device,” describes a new protocol called Peer I/O, which enables smart cards and other resource-constrained devices using half-duplex serial command/response communication protocol to handle full-duplex peer-to-peer communications (hereinafter, the “'738” application). Thus, such a device deploying Peer I/O may join a network as a network peer.
It would be useful to have a system and method that is generally applicable to enable devices that communicate using half-duplex serial command/response communications protocols to handle asynchronous full-duplex peer-to-peer communications.
There is a current trend that is likely to continue to make electronic communications devices portable, small and wireless. One challenge that follows from that trend is that by virtue of being wireless, the device must carry its own power source, typically a battery. Because that battery is a diminishing resource until the device is again connected to a wired power source, the duration of available power, or simply, battery life, is a major issue. A selling factor for portable devices is their size. Of course, the smaller the device, the smaller the battery, and consequently, the shorter the battery life.
One very common resource-constrained device is the SIM module for mobile telephones. During the last several years, mobile telephones have been provided with many new features and functionality. Co-pending and co-assigned patent application Ser. No. 11/234,577, titled “Communications of UICC in mobile devices using Internet Protocols”, describes applications in which the SIM card may act as a network peer, for example, by executing a web server on the SIM card. Power consumption and its related effect, battery life, are very important in the context of mobile telephones. It is therefore desirable to have a system and method for allowing electronic devices that communicate using half-duplex serial command/response to handle asynchronous full-duplex peer-to-peer communications while conserving power and thereby extending the mobile devices battery life.
From the foregoing it will be apparent that there is still a need for an improved system and method to allow full-duplex peer-to-peer communication by a network attached resource-constrained device that communicates using a half-duplex serial command/response communications link while conserving the power consumption imposed by that resource-constrained device on a mobile device to which it is connected.